package com.kylin.domain.payment.vo;

import com.fasterxml.jackson.annotation.JsonAlias;
import lombok.Builder;
import lombok.Data;

import java.io.Serializable;

/**
 * 支付信息类
 * @author Damon S.
 * @version v1.0.1
 * @date 2020年01月18日 14:57
 */
@Data
@Builder
public final class PaymentInfo implements Serializable {
    @JsonAlias("appid")
    private String appId;

    @JsonAlias("mch_id")
    private String mchId;

    /**设备号，小程序传"WEB"*/
    @JsonAlias("device_info")
    private String deviceInfo;

    @JsonAlias("nonce_str")
    private String nonce;

    /**签名类型*/
    @JsonAlias("sign_type")
    private String signType;
    private String body;
    private String attach;
    private String sign;

    @JsonAlias("out_trade_no")
    private String outTradeNo;

    @JsonAlias("total_fee")
    private int totalFee;

    @JsonAlias("spbill_create_ip")
    private String spbillCreateIp;

    @JsonAlias("time_start")
    private String timeStart;

    @JsonAlias("time_expire")
    private String timeExpire;

    @JsonAlias("notify_url")
    private String notifyUrl;

    /**交易类型,JSAPI*/
    @JsonAlias("trade_type")
    private String tradeType;

    /**指定支付方式，no_credit*/
    @JsonAlias("limit_pay")
    private String limitPay;

    @JsonAlias("openid")
    private String openId;
}
